Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.02.2013, 20:27
Аспирант
Отправить личное сообщение для allanmiln Посмотреть профиль Найти все сообщения от allanmiln
 
Регистрация: 18.01.2013
Сообщений: 94

Как сделать редирект или заблокировать кнопку в скрипте...
Сделал регистрацию с использованием AJAX по этому уроку:
http://www.testof.ru/view_post.php?id=102&cat=2

Вот я никак не могу добиться редиректа после получения положительного ответа (регистрация прошла успешно). Я так понимаю, нужно выполнить js код вместе с положительным ответом от скрипта. Но вот как?
Ответить с цитированием
  #2 (permalink)  
Старый 16.02.2013, 20:43
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

редирект в javascript:

location = '/new_url.html';
Ответить с цитированием
  #3 (permalink)  
Старый 16.02.2013, 20:52
Аспирант
Отправить личное сообщение для allanmiln Посмотреть профиль Найти все сообщения от allanmiln
 
Регистрация: 18.01.2013
Сообщений: 94

Это ясно, не ясно в какой части скрипта это писать.
Ответить с цитированием
  #4 (permalink)  
Старый 16.02.2013, 20:57
Аспирант
Отправить личное сообщение для allanmiln Посмотреть профиль Найти все сообщения от allanmiln
 
Регистрация: 18.01.2013
Сообщений: 94

Если написать в PHP-скрипте, то ничего не произойдёт, потому что с ним работает JS AJAX.
Ответить с цитированием
  #5 (permalink)  
Старый 16.02.2013, 21:12
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

var xhr = new XMLHttpRequest();

xhr.open('GET', url);
xhr.onreadystatechange = function(){
    if (this.readyState == 4) {
        // пришел ответ
        if (this.status == 301) {
            // сервер просит нас перейти на новый адрес
            var url = this.getResponseHeader('Location');
            location.href = url;
        }
    }
}
Ответить с цитированием
  #6 (permalink)  
Старый 16.02.2013, 21:13
Аспирант
Отправить личное сообщение для allanmiln Посмотреть профиль Найти все сообщения от allanmiln
 
Регистрация: 18.01.2013
Сообщений: 94

Всё получилось. Я просто отправил ответ с PHP с помощью echo 'OK';
Перехватил в JS и перенаправил:

if (reg_response.innerHTML == 'OK') {
window.location = 'private.php';
}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сделать чтобы калькулятор считал автоматически без нажатия на кнопку станислав123 Общие вопросы Javascript 1 14.12.2012 17:54
Как сделать чтоб функция выволнялась по click один раз или просто выполнялась? TaH4uk.pro jQuery 1 06.12.2012 22:41
Восторг в античной ForYourself ювелирные изделия тибетской или дать как подарок whistle123 Events/DOM/Window 0 03.12.2012 10:09
Как сделать такое fancy menu uonax Элементы интерфейса 2 22.05.2010 12:52
Многостраничная галерея на lightbox.js Как сделать? MASTER Общие вопросы Javascript 9 24.07.2009 14:38